home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / DRVLIB.NIC / DIGIX25 / OEMSETUP.INF < prev    next >
Encoding:
INI File  |  1996-07-31  |  73.2 KB  |  1,823 lines

  1. [Identification] 
  2.     OptionType = NetAdapter
  3. [PlatformsSupported]
  4.     ISA
  5.         EISA
  6.         PCI
  7. [LanguagesSupported]
  8.     ENG
  9. [Options]
  10.     DigiSyncX25
  11. [FileConstants]
  12. UtilityInf      = "UTILITY.INF"
  13. ParamInf        = "NCPARAM.INF"
  14. subroutineinf   = "SUBROUTN.INF"
  15. SoftwareType    = "driver"
  16. Exit_Code       = 0
  17. SuccessCode     = 0
  18. HandleNull      = ""
  19. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  20. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  21. Manufacturer    = "DigiBoard"
  22. ProductMajorVersion  = "3"
  23. ProductMinorVersion  = "51"
  24. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  25.  
  26. InfName = ""
  27. ErrorControlValue = 1
  28. ServicesbasedKey   = ""
  29. DigiSpecificString = ""
  30.  
  31. DigiSupport = "X.25"
  32. DigiNumPorts = 2
  33.  
  34. ; Digi X.25 driver software parameters
  35. X25ProductSoftwareName     = "DigiX25"
  36. X25ProductServiceName     = "DigiX25"
  37. X25ProductSoftwareTitle    = "Digi X.25 Driver"
  38. X25ProductSoftwareDisplayName    = "Digi X.25 Driver"
  39. X25ProductSoftwareDescription    = "Digi X.25 Driver"
  40. X25ProductSoftwareImagePath = "%SystemRoot%\System32\drivers\DigiX25.sys"
  41. X25NetRuleSoftwareType     = "DigiX25Sys DigiX25Driver"
  42. X25NetRuleSoftwareUse      = "driver"
  43. X25NetRuleSoftwareBindForm = """"DigiX25Driver""" yes no container"
  44. X25NetRuleSoftwareClass    = {"DigiX25Driver basic"}
  45. X25NetRuleSoftwareBindable = {"DigiX25Driver DigiX25Adapter non exclusive 100"}
  46. X25SoftwareRefCount     = 0
  47. X25NetRuleInfNameSoftware  =  ""
  48. X25NetRuleInfOption        =  "DigiSyncX25"
  49. X25SoftProductKey    = ""
  50. X25SoftNetRuleKey    = ""
  51. X25SoftServiceKey    = ""
  52. X25SoftParameterKey     = ""
  53. X25SoftLinkageKey     = ""
  54. X25TypeSupported        = 7
  55. X25EventFile = $(IoLogMsgDLL)";"$(X25ProductSoftwareImagePath)
  56. X25Group                = "NDIS"
  57. X25NetworkAddress       = "22-33-44-55-66-70"
  58. X25ServiceParametersKey = ""
  59. X25ServiceDigiX25Key    = ""
  60. X25ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(X25ProductSoftwareName)"\CurrentVersion"
  61. X25SoftwareHiddenDriver = 1
  62.  
  63. ; Digi Sxb driver Software parameters
  64. SxbProductSoftwareName     = "DigiSxb"
  65. SxbProductServiceName     = "DigiSxb"
  66. SxbProductSoftwareTitle    = "Digi SyncPort SXB Driver"
  67. SxbProductSoftwareDescription    = "Digi SyncPort SXB Driver"
  68. SxbProductSoftwareImagePath = "%SystemRoot%\System32\drivers\DigiSxb.sys"
  69. SxbNetRuleSoftwareType     = "DigiSxbSys DigiSxbDriver"
  70. SxbNetRuleSoftwareUse      = "driver"
  71. SxbNetRuleSoftwareBindForm = """"DigiSxbDriver""" yes no container"
  72. SxbNetRuleSoftwareClass    = {"DigiSxbDriver basic"}
  73. SxbNetRuleSoftwareBindable = {"DigiSxbDriver DigiSxbAdapter non exclusive 100"}
  74. SxbSoftwareRefCount     = 0
  75. SxbNetRuleInfNameSoftware  =  ""
  76. SxbNetRuleInfOption        =  "DigiSyncX25"
  77. SxbSoftProductKey    = ""
  78. SxbSoftNetRuleKey    = ""
  79. SxbSoftServiceKey    = ""
  80. SxbSoftParameterKey     = ""
  81. SxbSoftLinkageKey     = ""
  82. SxbTypeSupported        = 7
  83. SxbEventFile = $(IoLogMsgDLL)";"$(SxbProductSoftwareImagePath)
  84. SxbKeyProductHdwDriver  = ""
  85. SxbProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(SxbProductSoftwareName)"\CurrentVersion"
  86. SxbServiceFacilityKey   = ""
  87. SxbServiceDigiSxbKey    = ""
  88. SxbServiceParametersKey = ""
  89. SxbGroup             = "NDIS"
  90. SxbServiceFacility   = "Facility0"
  91. SxbdevWans           = "/dev/Wans" 
  92. SxbWanS              = "WanS"
  93. SxbNetworkAddress    = "53-52-43-44-47-32"
  94. SxbSoftwareHiddenDriver = 1
  95.  
  96. ; Digi Adapter NT NetCard install
  97. AdapterKeyNetcardsArea = ""
  98. AdapterKeyNetcard   = ""
  99. AdapterCardNumber   = ""
  100. AdapterNetRulesKey  = ""
  101. AdapterKeyParmeters = ""
  102. ;;;
  103. AdapterHardwareName = "DigiSxb"
  104. AdapterNumber       = ""
  105. AdapterNameNumber   = ""
  106. AdapterHardwareTitle       = "Digi SyncPort Adapter"
  107. AdapterHardwareDescription = "Digi SyncPort Adapter"
  108. AdapterNetRuleType         = "DigiSxb DigiSxbAdapter"
  109. AdapterNetRuleBindForm     = " yes yes container"
  110. ;AdapterNetRuleClass        = {"""DigiSxbAdapter basic"""}
  111. AdapterNetRuleClass        = {"DigiSxbAdapter basic"}
  112. AdapterNetRuleInfName      = ""
  113. AdapterNetRulesInfOption   =  "DigiSyncX25"
  114. AdapterNetworkAddress = "53-52-43-44-47-31"
  115. AdapterBiosImagePathISA  = "SxbBios.bin"
  116. AdapterSxbImagePathISA   = "SxbFep.bin"
  117. AdapterBiosImagePathPCI  = "SxbBios.pci"
  118. AdapterSxbImagePathPCI   = "SxbFep.pci"
  119. AdapterProductName    =  "DigiSxb"
  120. AdapterInterruptNumber = 15
  121. AdapterIOBaseAddress   = 808
  122. AdapterMemoryAddress   = 851968
  123. AdapterWindowSize      = 32768 
  124. AdapterTempServiceBaseKey = ""
  125. AdapterNameNumberBaseKey = ""
  126. AdapterParametersKey     = ""
  127.  
  128. ; Digi X25 virtual adapter params
  129. X25HardwareName = "DigiX25"
  130. X25HardwareTitle       = "Digi X.25 Virtual Adapter"
  131. X25HardwareDescription = "Digi X.25 Virtual Adapter"
  132. X25NetRuleType         = "DigiX25 DigiX25Adapter"
  133. X25NetRuleBindForm     = " yes yes container"
  134. X25NetRuleClass        = {"DigiX25Adapter basic"}
  135. X25NetRulesInfOption   =  "DigiSyncX25"
  136. X25MaxSendWindow     = 4
  137.  
  138. ; Digi Sxb Hardware parameters
  139. ProductHardwareName     = "DigiSxb"
  140. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(X25ProductSoftwareName)"\CurrentVersion"
  141. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  142. KeyProductHdwDriver = ""
  143. ServiceProviderMediaType = ""
  144. ServiceProviderNetCardNumber = ""
  145. ServiceProviderAddress      = {""}
  146. PreviousValueList = {}
  147. ServiceProviderAddressFinal = {}
  148. DigiX25ServiceProviderKey = ""
  149. TapiDevicesKey = ""
  150. DeviceMapKey = ""
  151.  
  152. ServiceProviderAddress = {}
  153. BuildAddress = ""
  154. BuildDigit2 = 0
  155. BuildDigit3 = 0
  156.  
  157. tempList = {}
  158. PreviousValueList = {}
  159.  
  160. [GeneralConstants]
  161. ExitCodeOk     = 0
  162. ExitCodeCancel = 1
  163. ExitCodeFatal  = 2
  164. KeyNull         = ""
  165. MAXIMUM_ALLOWED   = 33554432
  166. RegistryErrorIndex = NO_ERROR
  167. KeyProduct      = ""
  168. KeyParameters   = ""
  169. TRUE            = 1
  170. FALSE           = 0
  171. NoTitle         = 0
  172. OldVersionExisted = $(FALSE)
  173.  
  174. [UiVars]
  175.     from      = ""
  176.     to        = ""
  177.     !STF_DISPLAYDEBUGOUTPUT = 1
  178.     !STF_NTDRIVE        = ""
  179.     !STF_NTPATH         = ""
  180.     !STF_WINDOWSPATH    = "" ? $(!LIBHANDLE) GetWindowsNtDir
  181.     !STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir
  182.     DriverPath      = $(!STF_NTPATH)"\drivers"
  183.  
  184. [DebugOptions]
  185.     !DebugOutputControl = 1
  186.     TraceConfig = 0
  187. [date]
  188.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  189. [Identify]
  190.     read-syms Identification
  191.     set Status     = STATUS_SUCCESSFUL
  192.     set Identifier = $(OptionType)
  193.     set Media      = #("Source Media Descriptions", 1, 1)
  194.     Return $(Status) $(Identifier) $(Media)
  195. [ReturnOptions]
  196.     set Status        = STATUS_FAILED
  197.     set OptionList     = {}
  198.     set OptionTextList = {}
  199.     set LanguageList = ^(LanguagesSupported, 1)
  200.     Ifcontains(i) $($0) in $(LanguageList)
  201.         ifstr(i) $($1) == ""
  202.                         goto returnoptions
  203.         endif
  204.         set PlatformList = ^(PlatformsSupported, 1)
  205.         Ifcontains(i) $($1) in $(PlatformList)
  206.                         goto returnoptions
  207.         else
  208.                         set Status = STATUS_NOTSUPPORTED
  209.                         goto finish_ReturnOptions
  210.         endif
  211.     else
  212.                 set Status = STATUS_NOLANGUAGE
  213.                 goto finish_ReturnOptions
  214.     endif
  215. returnoptions = +
  216.     set OptionList     = ^(Options, 1)
  217.     set OptionTextList = ^(OptionsText$($0), 1)
  218.     set Status         = STATUS_SUCCESSFUL
  219. finish_ReturnOptions = +
  220.     Return $(Status) $(OptionList) $(OptionTextList)
  221. [InstallOption]
  222.     read-syms DebugOptions
  223.     Debug-Output "OEMNADDS.INF: In [InstallOption] section"
  224.     Debug-Output "OEMNADDS.INF: TraceConfig = "$(TraceConfig)
  225.     set Status   = STATUS_FAILED
  226.     set Option   = $($1)
  227.     set SrcDir   = $($2)
  228. ;    set AddCopy  = $($3)
  229. ;    set DoCopy   = $($4)
  230.     set AddCopy  = "YES"
  231.     set DoCopy   = "YES"
  232.     set DoConfig = "YES"
  233. ;    set DoConfig = $($5)
  234.     set SourceDir = $($2)
  235.     set LanguageList = ^(LanguagesSupported, 1)
  236.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  237.         Return STATUS_NOLANGUAGE
  238.     endif
  239.     set OptionList     = ^(Options, 1)
  240.     Ifcontains(i) $(Option) NOT-IN $(OptionList)
  241.             set Error = "The installation option is not supported"
  242.             goto fatal
  243.         endif
  244.  
  245.     set-subst LF = "\n"
  246.     read-syms GeneralConstants
  247.     read-syms FileConstants
  248.     ifstr(i) $(!NTN_Origination) == "NCPA"
  249.         set Continue = "OK"
  250.     endif
  251.     read-syms FileConstants$(!STF_LANGUAGE)
  252.     detect date
  253.     set-title  $(FunctionTitle)
  254.     set to   = Begin
  255.     set from = Begin
  256.     set CommonStatus = STATUS_SUCCESSFUL
  257.     EndWait
  258. Begin = +
  259.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  260.         set StartLabel = removeadapter
  261.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  262.         set StartLabel = UpgradeSoftware
  263.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  264.         set StartLabel = bindingadapter
  265.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  266.             set CommonStatus = STATUS_REBOOT
  267.         set StartLabel = configureadapter
  268.         Ifstr(i) $(SxbProductKeyName) == $(!NTN_RegBase)
  269.             Debug-Output "Cannot configure the Digi SyncPort WAN-Link driver software."
  270.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  271.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  272.                 Debug-Output "ShellCode error: cannot get an error string."
  273.                 goto ShellCodeError
  274.             endif
  275.             set Error = $($R0)
  276.             set from = end
  277.             set to = end
  278.             goto nonfatalinfo
  279.         endif
  280.         Ifstr(i) $(X25ProductKeyName) == $(!NTN_RegBase)
  281.             Debug-Output "Cannot configure the X.25 driver software."
  282.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  283.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  284.                 Debug-Output "ShellCode error: cannot get an error string."
  285.                 goto ShellCodeError
  286.             endif
  287.             set Error = $($R0)
  288.             set from = end
  289.             set to = end
  290.             goto nonfatalinfo
  291.         endif
  292.     else
  293.         set StartLabel = installadapter
  294.         set OEM_ABANDON_OPTIONS = {}
  295.         set OEM_ABANDON_SOFTWARE = FALSE
  296.         set OEM_ABANDON_ON = TRUE
  297.     endif
  298.     Debug-Output "OEMNADX.INF: =================================================="
  299.     Debug-Output "OEMNADX.INF: STF_CWDDIR is: "$(!STF_CWDDIR)
  300.     Debug-Output "OEMNADX.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  301.     Debug-Output "OEMNADX.INF: Option is: "$(Option)
  302.     Debug-Output "OEMNADX.INF: SrcDir is: "$(SrcDir)
  303.     Debug-Output "OEMNADX.INF: !STF_NCDETECT  is: "$(!STF_NCDETECT)
  304.     Debug-Output "OEMNADX.INF: !STF_NCOPTION  is: "$(!STF_NCOPTION)
  305.     Debug-Output "OEMNADX.INF: !STF_NCDETCARD is: "$(!STF_NCDETCARD)
  306.     Debug-Output "OEMNADX.INF: !STF_NCDETINFO is: "$(!STF_NCDETINFO)
  307.     Debug-Output "OEMNADX.INF: BusTypeNum is: "$(BusTypeNum)
  308.     Debug-Output "OEMNADX.INF: =================================================="
  309.  
  310.     Goto $(StartLabel)
  311. installadapter = +
  312. ; don't install if FR present
  313.         OpenRegKey $(!REG_H_LOCAL) "" "Software\DigiBoard\DigiFr"    $(MAXIMUM_ALLOWED) Key
  314.         ifstr $(Key) != $(KeyNULL)
  315.             set Error = "X.25 services cannot be installed while Frame Relay is installed"
  316.             goto fatal
  317.         endif
  318.  
  319.     ; Check to see if the product is already installed
  320.     OpenRegKey $(!REG_H_LOCAL) "" $(X25ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  321.     Debug-Output "OEMNADX.INF: KeyProduct "$(KeyProduct)
  322.     Ifstr(i) $(KeyProduct) != ""
  323.         CloseRegKey $(KeyProduct)
  324.         ifstr(i) !(NTN_RegBase) == $(X25ProductKeyName)
  325.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  326.                $(ProductVersion)
  327.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  328.                Debug-Output "ShellCode error: cannot get an error string."
  329.                goto ShellCodeError
  330.            endif
  331.            goto end
  332.         else
  333.             OpenRegKey $(!REG_H_LOCAL) "" $(SxbProductKeyName) +
  334.                        $(MAXIMUM_ALLOWED) KeyProductHdwDriver
  335.             Ifstr $(KeyProductHdwDriver) != $(KeyNull)
  336.                 CloseRegKey $(KeyProductHdwDriver)
  337.                 Shell $(UtilityInf), CardExistedDlg
  338.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  339.                     Debug-Output "ShellCode error: --One adapter all ready exists, install another-- FAILED."
  340.                     goto ShellCodeError
  341.                 endif
  342.                 ifstr(i) $($R1) != "OK"
  343.                     goto end
  344.                 endif
  345.             EndIf 
  346.             CloseRegKey $(KeyProductHdwDriver)  
  347.             set OldVersionExisted = $(TRUE)
  348.         endif
  349.     endif
  350.  
  351. ; The OldVersionExisted variable is a major control structure mechanism 
  352. ; if the OldVersion does exist then skip the creation of registry entries that 
  353. ; are only needed once for this type of adapter and then do create the 
  354. ; registry entries that are unique for each adapter card installed.
  355.  
  356. ifint $(OldVersionExisted) == $(FALSE)
  357.  
  358. ; ********************************************************************************
  359.    ; Now create the service for the DigiSxb
  360. ; ********************************************************************************
  361.    Shell $(UtilityInf), CreateService $(SxbProductServiceName),$(SxbProductSoftwareTitle), +
  362.     $(SxbProductSoftwareImagePath), +
  363.     "kernelautostart",$(SxbGroup),{},"",$(SxbEventFile),$(SxbTypeSupported),"",$(ErrorControlValue), +
  364.     $(SxbProductServiceName),"",""
  365.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  366.         Debug-Output "ShellCode error."
  367.         goto ShellCodeError
  368.     endif
  369.     set RegistryErrorIndex = $($R0)
  370.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  371.         EndWait
  372.         goto fatalregistry
  373.     endif
  374.    Set SxbSoftServiceKey      = $($R1)
  375.     Set SxbSoftParameterKey    = $($R2)
  376.     Set SxbSoftLinkageKey      = $($R3)
  377.  
  378. ; ********************************************************************************
  379.    ; Now create the service for the DigiX25
  380. ; ********************************************************************************
  381.    Shell $(UtilityInf), CreateService $(X25ProductServiceName),$(X25ProductSoftwareDisplayName), +
  382.     $(X25ProductSoftwareImagePath), +
  383.     "kernel",$(X25Group),{"NdisTapi"},"",$(X25EventFile),$(X25TypeSupported),"",$(ErrorControlValue), +
  384.     $(X25ProductServiceName),"",""
  385.  
  386.     set OEM_ABANDON_SOFTWARE = TRUE
  387.  
  388.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  389.         Debug-Output "ShellCode error."
  390.         goto ShellCodeError
  391.     endif
  392.     set RegistryErrorIndex = $($R0)
  393.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  394.         EndWait
  395.         goto fatalregistry
  396.     endif
  397.     Set X25SoftServiceKey      = $($R1)
  398.     Set X25SoftParameterKey    = $($R2)
  399.     Set X25SoftLinkageKey      = $($R3)
  400.  
  401.     set NewValueList = +
  402.         {{OtherDependencies, $(NoTitle), $(!REG_VT_MULTI_SZ), {"DigiSxb"} }}
  403.     Shell  $(UtilityInf), AddValueList, $(X25SoftLinkageKey), $(NewValueList)
  404.  
  405. ; ****************************************************************
  406. ; **** Begin Installing Software Products
  407. ;*****************************************************************
  408.     ; Perform software product installation for the hardware portion of the product
  409.     ; The InstallsoftwareProduct shell essentially creates under the HKEY_LOCAL_MACHINE\
  410.     ; SOFTWARE\ key the DigiBoard\DigiSxb\CurrentVersion\NetRules subkeys hierarchy.
  411.  
  412.     Shell $(UtilityInf), InstallSoftwareProduct $(Manufacturer) $(ProductHardwareName) +
  413.         $(STF_CONTEXTINFNAME)
  414.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  415.         Debug-Output "ShellCode error."
  416.         goto ShellCodeError
  417.     endif
  418.     set RegistryErrorIndex = $($R0)
  419.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  420.         EndWait
  421.         goto fatalregistry
  422.     endif
  423.     Set SxbSoftProductKey      = $($R1)
  424.     Set SxbSoftNetRuleKey      = $($R2)
  425.  
  426.     ; Perform software product installation for the software portion of the product
  427.     ; The InstallsoftwareProduct shell essentially creates under the HKEY_LOCAL_MACHINE\
  428.     ; SOFTWARE\ key the DigiBoard\DigiX25\CurrentVersion\NetRules subkeys hierarchy.
  429.  
  430.     Shell $(UtilityInf), InstallSoftwareProduct $(Manufacturer) $(X25ProductSoftwareName) +
  431.         $(STF_CONTEXTINFNAME)
  432.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  433.         Debug-Output "ShellCode error."
  434.         goto ShellCodeError
  435.     endif
  436.     set RegistryErrorIndex = $($R0)
  437.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  438.         EndWait
  439.         goto fatalregistry
  440.     endif
  441.     Set X25SoftProductKey      = $($R1)
  442.     Set X25SoftNetRuleKey      = $($R2)
  443.  
  444. ;*****************************************************************
  445. ;Software Registration for DigiX25 Driver.
  446. ;*****************************************************************
  447.     set DigiSpecificString = "Software Registration for DigiX25 Driver"
  448.     set NewValueList = +
  449.     {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  450.         {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)},+
  451.         {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)},+
  452.         {Title,$(NoTitle),$(!REG_VT_SZ),$(X25ProductSoftwareTitle)},+
  453.         {Description,$(NoTitle),$(!REG_VT_SZ),$(X25ProductSoftwareDescription)},+
  454.         {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(X25ProductServiceName)},+
  455.         {hidden,$(NoTitle),$(!REG_VT_DWORD),$(X25SoftwareHiddenDriver)}, +
  456.         {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}, +
  457.     {RefCount,$(NoTitle),$(!REG_VT_DWORD),$(X25SoftwareRefCount)}}
  458.     Shell  $(UtilityInf), AddValueList, $(X25SoftProductKey), $(NewValueList)
  459.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  460.         Debug-Output "ShellCode error: AddValueList FAILED!  --"$(X25SoftProductKey)
  461.         goto ShellCodeError
  462.     endif
  463.     set RegistryErrorIndex = $($R0)
  464.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  465.         EndWait
  466.         Debug-Output "Registry error: add value list."
  467.         CloseRegKey $(X25SoftProductKey)
  468.         CloseRegKey $(X25SoftNetRuleKey)
  469.         CloseRegKey $(X25SoftServiceKey)
  470.         CloseRegKey $(X25SoftParameterKey)
  471.         CloseRegKey $(X25SoftLinkageKey)
  472.         goto fatalregistry
  473.     endif
  474.  
  475.     set X25NetRuleInfNameSoftware  =  $(STF_CONTEXTINFNAME)
  476.  
  477.     Shell  $(UtilityInf), ReduceInfPath, $(X25NetRuleInfNameSoftware)
  478.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  479.         Debug-Output "ShellCode error: ReduceInfPath FAILED  -- "$(X25NetRuleInfNameSoftware)
  480.         goto ShellCodeError
  481.     endif
  482.     set X25NetRuleInfNameSoftware = $($R0)
  483.  
  484.     set NewValueList = +
  485.        {{type,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleSoftwareType)},+
  486.             {use,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleSoftwareUse)}, +
  487.             {bindform,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleSoftwareBindForm)}, +
  488.             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(X25NetRuleSoftwareClass)}, +
  489.             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(X25NetRuleSoftwareBindable)}, +
  490.             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleInfOption)} +
  491.         {InfName,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleInfNameSoftware)}}
  492.     Shell  $(UtilityInf), AddValueList, $(X25SoftNetRuleKey), $(NewValueList)
  493.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  494.         Debug-Output "ShellCode error: AddValueList FAILED! --"$(X25SoftNetRuleKey)
  495.         goto ShellCodeError
  496.     endif
  497.     set RegistryErrorIndex = $($R0)
  498.     FlushRegKey $(X25SoftProductKey)
  499.     FlushRegKey $(X25SoftNetRuleKey)
  500.     FlushRegKey $(X25SoftServiceKey)
  501.     FlushRegKey $(X25SoftParameterKey)
  502.     FlushRegKey $(X25SoftLinkageKey)
  503.     CloseRegKey $(X25SoftProductKey)
  504.     CloseRegKey $(X25SoftNetRuleKey)
  505.     CloseRegKey $(X25SoftServiceKey)
  506.     CloseRegKey $(X25SoftParameterKey)
  507.     CloseRegKey $(X25SoftLinkageKey)
  508.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  509.       EndWait
  510.       Debug-Output "Registry error: add value list."
  511.       goto fatalregistry
  512.     endif
  513.  
  514. ;*******************************************************************
  515. ;End Software Registration for DigiX25 Driver.
  516. ;*******************************************************************
  517. ;
  518. ;*******************************************************************
  519. ;Begin Software Registration for DigiSxb Driver.
  520. ;*******************************************************************
  521.     set DigiSpecificString = "Software Registration for DigiSxb Driver"
  522.     set NewValueList = +
  523.     {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  524.         {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)},+
  525.         {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)},+
  526.         {Title,$(NoTitle),$(!REG_VT_SZ),$(SxbProductSoftwareTitle)},+
  527.         {Description,$(NoTitle),$(!REG_VT_SZ),$(SxbProductSoftwareDescription)},+
  528.         {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(SxbProductServiceName)},+
  529.         {hidden,$(NoTitle),$(!REG_VT_DWORD),$(SxbSoftwareHiddenDriver)}, +
  530.         {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}, +
  531.     {RefCount,$(NoTitle),$(!REG_VT_DWORD),$(SxbSoftwareRefCount)}}
  532.     Shell  $(UtilityInf), AddValueList, $(SxbSoftProductKey), $(NewValueList)
  533.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  534.         Debug-Output "ShellCode error: AddValueList FAILED!  --"$(SxbSoftProductKey)
  535.         goto ShellCodeError
  536.     endif
  537.     set RegistryErrorIndex = $($R0)
  538.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  539.         EndWait
  540.         Debug-Output "Registry error: add value list."
  541.         CloseRegKey $(SxbSoftProductKey)
  542.         CloseRegKey $(SxbSoftNetRuleKey)
  543.         CloseRegKey $(SxbSoftServiceKey)
  544.         CloseRegKey $(SxbSoftParameterKey)
  545.         CloseRegKey $(SxbSoftLinkageKey)
  546.         goto fatalregistry
  547.     endif
  548.  
  549.     set SxbNetRuleInfNameSoftware  =  $(STF_CONTEXTINFNAME)
  550.  
  551.     Shell  $(UtilityInf), ReduceInfPath, $(SxbNetRuleInfNameSoftware)
  552.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  553.         Debug-Output "ShellCode error: ReduceInfPath FAILED  -- "$(SxbNetRuleInfNameSoftware)
  554.         goto ShellCodeError
  555.     endif
  556.    set SxbNetRuleInfNameSoftware = $($R0)
  557.  
  558.     set NewValueList = +
  559.        {{type,$(NoTitle),$(!REG_VT_SZ),$(SxbNetRuleSoftwareType)},+
  560.             {use,$(NoTitle),$(!REG_VT_SZ),$(SxbNetRuleSoftwareUse)}, +
  561.             {bindform,$(NoTitle),$(!REG_VT_SZ),$(SxbNetRuleSoftwareBindForm)}, +
  562.             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(SxbNetRuleSoftwareClass)}, +
  563.             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(SxbNetRuleSoftwareBindable)}, +
  564.             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(SxbNetRuleInfOption)} +
  565.         {InfName,$(NoTitle),$(!REG_VT_SZ),$(SxbNetRuleInfNameSoftware)}}
  566.     Shell  $(UtilityInf), AddValueList, $(SxbSoftNetRuleKey), $(NewValueList)
  567.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  568.         Debug-Output "ShellCode error: AddValueList FAILED! --"$(SxbSoftNetRuleKey)
  569.         goto ShellCodeError
  570.     endif
  571.     set RegistryErrorIndex = $($R0)
  572.     FlushRegKey $(SxbSoftProductKey)
  573.     FlushRegKey $(SxbSoftNetRuleKey)
  574.     FlushRegKey $(SxbSoftServiceKey)
  575.     FlushRegKey $(SxbSoftParameterKey)
  576.     FlushRegKey $(SxbSoftLinkageKey)
  577.     CloseRegKey $(SxbSoftProductKey)
  578.     CloseRegKey $(SxbSoftNetRuleKey)
  579.     CloseRegKey $(SxbSoftServiceKey)
  580.     CloseRegKey $(SxbSoftParameterKey)
  581.     CloseRegKey $(SxbSoftLinkageKey)
  582.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  583.       EndWait
  584.       Debug-Output "Registry error: add value list."
  585.       goto fatalregistry
  586.     endif
  587.  
  588. ;**********************************************************
  589. ;End Software Registration for DigiSxb Driver.
  590. ;**********************************************************
  591.  
  592. endif
  593. ; end if for OldVersionExisted if
  594. ; That is do the following every time an adapter is added regardless
  595. ; of whether an old Version existed
  596.  
  597.     ifstr(i) $(!STF_NCDETINFO) == {}
  598.         Shell $(UtilityInf),GetBusTypeDialog,$(ProductHardwareDescription) $(BusInterfaceType) $(BusNumber)
  599.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  600.             Debug-Output "ShellCode error."
  601.             goto ShellCodeError
  602.         endif
  603.         set BusInterfaceType = $($R1)
  604.         set BusNumber = $($R2)
  605.     else
  606.         set BusInterfaceType = *($(!STF_NCDETINFO),5)
  607.         set BusNumber = *($(!STF_NCDETINFO),6)
  608.     endif
  609.  
  610.         ifstr $(BusInterfaceType) == 5
  611.             set AdapterBiosImagePath = $(AdapterBiosImagePathPCI)
  612.             set AdapterSxbImagePath  = $(AdapterSxbImagePathPCI)
  613.         else
  614.             set AdapterBiosImagePath = $(AdapterBiosImagePathISA)
  615.             set AdapterSxbImagePath  = $(AdapterSxbImagePathISA)
  616.         endif
  617.  
  618. ;*******************************************************************
  619. ;Begin Software Registration for Windows NT Digi X.25 Virtual Adapter.
  620. ;*******************************************************************
  621.     Debug-Output "******************Entering addAdapterComponent******************"
  622.     set DigiSpecificString = "Registration for Windows NT Digi X.25 Virtual Adapter"
  623.     Shell $(UtilityInf), AssignAdapterNumber, "", "1000"
  624.       ifint $($ShellCode) != $(!SHELL_CODE_OK)
  625.           Debug-Output "Cannot add hardware component!"
  626.         goto ShellCodeError
  627.       endif
  628.         set AdapterNum = $($R1);
  629.  
  630.     Shell $(UtilityInf), AddHardwareComponent, $(X25HardwareName), $(STF_CONTEXTINFNAME), $(X25ProductKeyName), "", "", $(AdapterNum)
  631.     ifint $($R4) != -1
  632.         Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  633.     endif
  634.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  635.         Debug-Output "Cannot add hardware component!"
  636.         goto ShellCodeError
  637.     endif
  638.     set RegistryErrorIndex = $($R0)
  639.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  640.         EndWait
  641.         Debug-Output "Registry error: add hardware component"
  642.         Debug-Output $(RegistryErrorIndex)
  643.         CloseRegKey $($R1)
  644.         CloseRegKey $($R2)
  645.         CloseRegKey $($R3)
  646.         goto fatalregistry
  647.     endif
  648.     set AdapterKeyNetcard    = $($R1)
  649.     set AdapterNetRulesKey   = $($R2)
  650.     set VAAdapterKeyParameters = $($R3)
  651.  
  652.     set AdapterNumber        = $($R4)
  653.         set X25VANum = $(AdapterNumber)
  654.  
  655.     set AdapterServiceName   = $($R5)
  656.     set X25VANameNumber = $(AdapterServiceName)
  657.  
  658.     set NewValueList = {{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(AdapterServiceName)},+
  659.                {Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  660.                        {Title,$(NoTitle),$(!REG_VT_SZ),"["$(AdapterNumber)"] "$(X25HardwareTitle)},+
  661.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(X25HardwareDescription)},+
  662.                        {ProductName,$(NoTitle),$(!REG_VT_SZ),$(X25HardwareName)},+
  663.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)},         +
  664.                        {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(TRUE)}}
  665.     Shell  $(UtilityInf), AddValueList, $(AdapterKeyNetcard), $(NewValueList)
  666.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  667.         Debug-Output "ShellCode error: AddValueList FAILED  -- "$(AdapterKeyNetcard)
  668.         goto ShellCodeError
  669.     endif
  670.  
  671.     set AdapterNetRuleInfName = $(STF_CONTEXTINFNAME)
  672.     Shell  $(UtilityInf), ReduceInfPath, $(AdapterNetRuleInfName)
  673.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  674.         Debug-Output "ShellCode error: ReduceInfPath FAILED  -- "$(AdapterNetRuleInfName)
  675.         goto ShellCodeError
  676.     endif
  677.     set AdapterNetRuleInfName = $($R0)
  678.     set TempProdName = """"$(X25HardwareName)$(AdapterNumber)""""
  679.     set TempBindForm = $(TempProdName)$(X25NetRuleBindForm)
  680.     set NewValueList = {{InfName,$(NoTitle),$(!REG_VT_SZ),$(AdapterNetRuleInfName)},+
  681.                         {type,$(NoTitle),$(!REG_VT_SZ),$(X25NetRuleType)},+
  682.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  683.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(X25NetRuleClass)}, +
  684.                         {InfOption,$(NoTitle),$(!REG_VT_SZ),$(X25NetRulesInfOption)}}
  685.     Shell  $(UtilityInf), AddValueList, $(AdapterNetRulesKey), $(NewValueList)
  686.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  687.         Debug-Output "ShellCode error."
  688.         goto ShellCodeError
  689.     endif
  690.     set RegistryErrorIndex = $($R0)
  691.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  692.         EndWait
  693.         Debug-Output "Resgitry error: add value list."
  694.         CloseRegKey $(AdapterNetRulesKey)
  695.         goto fatalregistry
  696.     endif
  697.  
  698.     FlushRegKey $(AdapterNetRulesKey)
  699.     CloseRegKey $(AdapterNetRulesKey)
  700.  
  701. ;*****************************************************************
  702. ;End Software Registration for Windows NT Digi X.25 Virtual Adapter
  703. ;*****************************************************************
  704.  
  705. ;*******************************************************************
  706. ;Begin Software Registration for Windows NT Digi X.25 Adapter.
  707. ;*******************************************************************
  708. addAdapterComponent = + 
  709.     Debug-Output "******************Entering addAdapterComponent******************"
  710.     set DigiSpecificString = "Registration for Windows NT Digi X.25 Adapter"
  711.     Shell $(UtilityInf), AddHardwareComponent, $(AdapterHardwareName), +
  712.                                     $(STF_CONTEXTINFNAME), $(SxbProductKeyName)
  713.     ifint $($R4) != -1
  714.         Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  715.     endif
  716.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  717.         Debug-Output "Cannot add hardware component!"
  718.         goto ShellCodeError
  719.     endif
  720.     set RegistryErrorIndex = $($R0)
  721.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  722.         EndWait
  723.         Debug-Output "Registry error: add hardware component"
  724.         Debug-Output $(RegistryErrorIndex)
  725.         CloseRegKey $($R1)
  726.         CloseRegKey $($R2)
  727.         CloseRegKey $($R3)
  728.         goto fatalregistry
  729.     endif
  730.     set AdapterKeyNetcard    = $($R1)
  731.     set AdapterNetRulesKey   = $($R2)
  732.     set AdapterKeyParameters = $($R3)
  733.     set AdapterNumber        = $($R4)
  734.     set AdapterServiceName   = $($R5)
  735.     set AdapterName = $(AdapterServiceName)
  736.     set NewValueList = {{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(AdapterServiceName)},+
  737.                {Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  738.                        {Title,$(NoTitle),$(!REG_VT_SZ),"["$(AdapterNumber)"] "$(AdapterHardwareTitle)},+
  739.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(AdapterHardwareDescription)},+
  740.                        {ProductName,$(NoTitle),$(!REG_VT_SZ),$(AdapterHardwareName)},+
  741.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  742.     Shell  $(UtilityInf), AddValueList, $(AdapterKeyNetcard), $(NewValueList)
  743.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  744.         Debug-Output "ShellCode error: AddValueList FAILED  -- "$(AdapterKeyNetcard)
  745.         goto ShellCodeError
  746.     endif
  747.  
  748.     set AdapterNameNumber = $(AdapterHardwareName)$(AdapterNumber)
  749.     set AdapterNetRuleInfName = $(STF_CONTEXTINFNAME)
  750.     Shell  $(UtilityInf), ReduceInfPath, $(AdapterNetRuleInfName)
  751.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  752.         Debug-Output "ShellCode error: ReduceInfPath FAILED  -- "$(AdapterNetRuleInfName)
  753.         goto ShellCodeError
  754.     endif
  755.     set AdapterNetRuleInfName = $($R0)
  756.     set TempProdName = """"$(AdapterHardwareName)$(AdapterNumber)""""
  757.     set TempBindForm = $(TempProdName)$(AdapterNetRuleBindForm)
  758.     set NewValueList = {{InfName,$(NoTitle),$(!REG_VT_SZ),$(AdapterNetRuleInfName)},+
  759.                         {type,$(NoTitle),$(!REG_VT_SZ),$(AdapterNetRuleType)},+
  760.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  761.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(AdapterNetRuleClass)}, +
  762.                         {InfOption,$(NoTitle),$(!REG_VT_SZ),$(AdapterNetRulesInfOption)}}
  763.     Shell  $(UtilityInf), AddValueList, $(AdapterNetRulesKey), $(NewValueList)
  764.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  765.         Debug-Output "ShellCode error."
  766.         goto ShellCodeError
  767.     endif
  768.     set RegistryErrorIndex = $($R0)
  769.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  770.         EndWait
  771.         Debug-Output "Resgitry error: add value list."
  772.         CloseRegKey $(AdapterNetRulesKey)
  773.         goto fatalregistry
  774.     endif
  775.     FlushRegKey $(AdapterNetRulesKey)
  776.     CloseRegKey $(AdapterNetRulesKey)
  777.  
  778. ;*****************************************************************
  779. ;End Software Registration for Windows NT Digi X.25 Adapter
  780. ;*****************************************************************
  781.  
  782. ;*****************************************************************
  783. ;Continue Service Registration for SYSTEM\CurrentControlSet\Services\DigiX25# X.25 Virtual Adapter
  784. ;*****************************************************************
  785. writeparameters = +
  786.     Debug-Output "******************Entering writeparameters******************"
  787.     set DigiSpecificString = "Service Registration...CurrentControlSet...DigiSxb# X.25 Adapter"
  788.     StartWait
  789.  
  790.     SetRegValue $(VAAdapterKeyParameters) {SxbDeviceA,$(NoTitle),$(!REG_VT_SZ),"\Device\"$(AdapterNameNumber)"A"}
  791.     SetRegValue $(VAAdapterKeyParameters) {SxbDeviceB,$(NoTitle),$(!REG_VT_SZ),"\Device\"$(AdapterNameNumber)"B"}
  792.     SetRegValue $(VAAdapterKeyParameters) {MaxSendWindow,$(NoTitle),$(!REG_VT_DWORD),$(X25MaxSendWindow)}
  793.     SetRegValue $(VAAdapterKeyParameters) {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)}
  794.     SetRegValue $(VAAdapterKeyParameters) {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)}
  795.     SetRegValue $(VAAdapterKeyParameters) {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(X25VANameNumber)}
  796.  
  797.     FlushRegKey $(AdapterNameNumberBaseKey)
  798.     FlushRegKey $(AdapterTempServiceBaseKey)
  799.     FlushRegKey $(VAAdapterKeyParameters)
  800.     CloseRegKey $(AdapterTempServiceBaseKey)
  801.     CloseRegKey $(AdapterNameNumberBaseKey)
  802.     CloseRegKey $(VAAdapterKeyParameters)
  803.     EndWait
  804.  
  805. ;***********************************************************************************
  806. ;End Service Registration for SYSTEM\CurrentControlSet\Services\DigiX25# X.25 Virtual Adapter
  807. ;***********************************************************************************
  808.  
  809. ;*****************************************************************
  810. ;Continue Service Registration for SYSTEM\CurrentControlSet\Services\DigiSxb# X.25 Adapter
  811. ;*****************************************************************
  812. writeparameters = +
  813.     Debug-Output "******************Entering writeparameters******************"
  814.     set DigiSpecificString = "Service Registration...CurrentControlSet...DigiSxb# X.25 Adapter"
  815.     StartWait
  816.  
  817.     SetRegValue $(AdapterKeyParameters) {MemoryMappedBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(AdapterMemoryAddress)}
  818.     SetRegValue $(AdapterKeyParameters) {IOBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(AdapterIOBaseAddress)}
  819.     SetRegValue $(AdapterKeyParameters) {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(AdapterInterruptNumber)}
  820.     SetRegValue $(AdapterKeyParameters) {HdwDeviceName,$(NoTitle),$(!REG_VT_SZ),$(AdapterProductName)}
  821.     SetRegValue $(AdapterKeyParameters) {SxbImagePath,$(NoTitle),$(!REG_VT_SZ),$(AdapterSxbImagePath)}
  822.     SetRegValue $(AdapterKeyParameters) {BiosImagePath,$(NoTitle),$(!REG_VT_SZ),$(AdapterBiosImagePath)}
  823.     SetRegValue $(AdapterKeyParameters) {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(AdapterNetworkAddress)}
  824.     SetRegValue $(AdapterKeyParameters) {WindowSize,$(NoTitle),$(!REG_VT_DWORD),$(AdapterWindowSize)}
  825.     SetRegValue $(AdapterKeyParameters) {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)}
  826.     SetRegValue $(AdapterKeyParameters) {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)}
  827.     SetRegValue $(AdapterKeyParameters) {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(AdapterServiceName)}
  828.     SetRegValue $(AdapterKeyParameters) {VANum,$(NoTitle),$(!REG_VT_DWORD),$(X25VANum)}
  829.     SetRegValue $(AdapterKeyParameters) {DigiSupport,$(NoTitle),$(!REG_VT_SZ),$(DigiSupport)}
  830.         SetRegValue $(AdapterKeyParameters) {DigiNumPorts,$(NoTitle),$(!REG_VT_DWORD),$(DigiNumPorts)}
  831.         
  832.         FlushRegKey $(AdapterNameNumberBaseKey)
  833.     FlushRegKey $(AdapterKeyParameters)
  834.     FlushRegKey $(AdapterTempServiceBaseKey)
  835.     CloseRegKey $(AdapterTempServiceBaseKey)
  836.     CloseRegKey $(AdapterNameNumberBaseKey)
  837.     CloseRegKey $(AdapterKeyParameters)
  838.     EndWait
  839.  
  840. ;***********************************************************************************
  841. ;End Service Registration for SYSTEM\CurrentControlSet\Services\DigiSxb# X.25 Adapter
  842. ;***********************************************************************************
  843.  
  844. ifint $(OldVersionExisted) == $(FALSE)
  845.  
  846. ;***********************************************************************************
  847. ;Begin to flesh out the System\CurrentControlSet\Services\DigiSxb Registry hierarchy
  848. ;***********************************************************************************
  849.     set DigiSpecificString = "Flesh out...\CurrentControlSet\...\DigiSxb Registry hierarchy"
  850.     StartWait
  851.     Shell   $(UtilityInf),BaseServiceKey
  852.     set RegistryErrorIndex = $($R0)
  853.     ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  854.       set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
  855.       goto fatalregistry
  856.     endif
  857.     set ServicesbasedKey = $($R1)
  858.     ifstr(i) $(ServicesbasedKey) == $(KeyNull)
  859.        Debug-Output "Unable to Open ServicesbasedKey"
  860.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  861.        goto fatalregistry
  862.     endif
  863.     OpenRegKey $(ServicesbasedKey) "" "DigiSxb" $(MAXIMUM_ALLOWED) SxbServiceDigiSxbKey
  864.     ifstr(i) $(SxbServiceDigiSxbKey) == $(KeyNull)
  865.        Debug-Output "Unable to Open SxbServiceDigiSxbKey" 
  866.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  867.        CloseRegKey $(ServicesbasedKey)
  868.        goto fatalregistry
  869.     endif
  870.     OpenRegKey $(SxbServiceDigiSxbKey) "" "Parameters" $(MAXIMUM_ALLOWED) +
  871.     SxbServiceParametersKey
  872.     ifstr(i) $(SxbServiceParametersKey) == $(KeyNull)
  873.        Debug-Output "Unable to Open SxbServiceParametersKey"
  874.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  875.        CloseRegKey $(ServicesbasedKey)
  876.        CloseRegKey $(SxbServiceDigiSxbKey)
  877.        goto fatalregistry
  878.     endif
  879.  
  880.     SetRegValue $(SxbServiceParametersKey) {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(SxbNetworkAddress)}
  881.  
  882.     CreateRegKey $(SxbServiceParametersKey) {$(SxbServiceFacility),$(NoTitle),GenericClass} "" +
  883.         $(MAXIMUM_ALLOWED) "" SxbServiceFacilityKey
  884.     ifstr $(SxbServiceFacilityKey) == $(KeyNull)
  885.  
  886.        OpenRegKey $(SxbServiceParametersKey) "" $(SxbServiceFacility) $(MAXIMUM_ALLOWED) +
  887.       SxbServiceFacilityKey
  888.        ifstr(i) $(SxbServiceFacilityKey) == $(KeyNull)
  889.           Debug-Output "Unable to Open SxbServiceParametersKey"
  890.           set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  891.           Debug-Output "Unable to Create or Open SxbServiceFacilityKey"
  892.           CloseRegKey $(ServicesbasedKey)
  893.           CloseRegKey $(SxbServiceDigiSxbKey)
  894.           CloseRegKey $(SxbServiceParametersKey)
  895.           goto fatalregistry
  896.        endif
  897.     endif
  898.     set NewValueList = +
  899.              {{DevName,$(NoTitle),$(!REG_VT_SZ),$(SxbdevWans)},+
  900.                   {Facility,$(NoTitle),$(!REG_VT_SZ),$(SxbWanS)}}
  901.     Shell  $(UtilityInf), AddValueList, $(SxbServiceFacilityKey),$(NewValueList)
  902.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  903.         Debug-Output "ShellCode error: AddValueList FAILED! --"$(SxbServiceFacilityKey)
  904.         CloseRegKey $(SxbServiceFacilityKey)
  905.         CloseRegKey $(ServicesbasedKey)
  906.         CloseRegKey $(SxbServiceDigiSxbKey)
  907.         CloseRegKey $(SxbServiceParametersKey)
  908.         goto ShellCodeError
  909.     endif
  910.     set RegistryErrorIndex = $($R0)
  911.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  912.         EndWait
  913.         Debug-Output "Registry error: add value list."
  914.         CloseRegKey $(SxbServiceFacilityKey)
  915.         CloseRegKey $(ServicesbasedKey)
  916.         CloseRegKey $(SxbServiceDigiSxbKey)
  917.         CloseRegKey $(SxbServiceParametersKey)
  918.         goto fatalregistry
  919.     endif
  920.  
  921.     FlushRegKey $(SxbServiceFacilityKey)
  922.     FlushRegKey $(SxbServiceParametersKey)
  923.     FlushRegKey $(SxbServiceDigiSxbKey)
  924.     FlushRegKey $(ServicesbasedKey) 
  925.    
  926.     CloseRegKey $(SxbServiceFacilityKey)
  927.     CloseRegKey $(ServicesbasedKey)
  928.     CloseRegKey $(SxbServiceDigiSxbKey)
  929.     CloseRegKey $(SxbServiceParametersKey)
  930.     EndWait
  931. ;***********************************************************************************
  932. ;End fleshing out System\CurrentControlSet\Services\DigiSxb Registry hierarchy
  933. ;***********************************************************************************
  934.  
  935. ;************************************************************************************
  936. ;Begin to flesh out the System\CurrentControlSet\Services\DigiX25 Registry hierarchy
  937. ;************************************************************************************
  938.     set DigiSpecificString = "Flesh out...CurrentControlSet...DigiX25 Registry hierarchy"
  939.     Shell   $(UtilityInf),BaseServiceKey
  940.     set RegistryErrorIndex = $($R0)
  941.     ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  942.       set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
  943.       goto fatalregistry
  944.     endif
  945.     set ServicesbasedKey = $($R1)
  946.     ifstr(i) $(ServicesbasedKey) == $(KeyNull)
  947.        Debug-Output "Unable to Open ServicesbasedKey"
  948.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  949.        goto fatalregistry
  950.     endif
  951.     OpenRegKey $(ServicesbasedKey) "" "DigiX25" $(MAXIMUM_ALLOWED) +
  952.     X25ServiceDigiX25Key
  953.     ifstr(i) $(X25ServiceDigiX25Key) == $(KeyNull)
  954.        Debug-Output "Unable to Open X25ServiceDigiX25Key" 
  955.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  956.        CloseRegKey $(ServicesbasedKey)
  957.        goto fatalregistry
  958.     endif
  959.     OpenRegKey $(X25ServiceDigiX25Key) "" "Parameters" $(MAXIMUM_ALLOWED) +
  960.     X25ServiceParametersKey
  961.     ifstr(i) $(X25ServiceParametersKey) == $(KeyNull)
  962.        Debug-Output "Unable to Open X25ServiceParametersKey"
  963.        set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  964.        CloseRegKey $(ServicesbasedKey)
  965.        CloseRegKey $(X25ServiceDigiX25Key)
  966.        goto fatalregistry
  967.     endif
  968. ;    set NewValueList = +
  969. ;          {{Group,$(NoTitle),$(!REG_VT_SZ),$(X25Group)}    +
  970. ;          }
  971. ;    Shell  $(UtilityInf), AddValueList, $(X25ServiceDigiX25Key), $(NewValueList)
  972. ;    ifint $($ShellCode) != $(!SHELL_CODE_OK)
  973. ;        Debug-Output "ShellCode error: AddValueList FAILED!  --"$(X25ServiceDigiX25Key)
  974. ;        CloseRegKey $(ServicesbasedKey)
  975. ;        CloseRegKey $(X25ServiceDigiX25Key)
  976. ;        CloseRegKey $(X25ServiceParametersKey)
  977. ;        goto ShellCodeError
  978. ;    endif
  979. ;    set RegistryErrorIndex = $($R0)
  980. ;    Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  981. ;        EndWait
  982. ;        Debug-Output "Registry error: add value list."
  983. ;        CloseRegKey $(ServicesbasedKey)
  984. ;        CloseRegKey $(X25ServiceDigiX25Key)
  985. ;        CloseRegKey $(X25ServiceParametersKey)
  986. ;        goto fatalregistry
  987. ;    endif
  988.     set NewValueList = +
  989.              {{BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)},+
  990.             {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  991.              {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(X25NetworkAddress)}}
  992.     Shell  $(UtilityInf), AddValueList, $(X25ServiceParametersKey),$(NewValueList)
  993.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  994.         Debug-Output "ShellCode error: AddValueList FAILED! --"$(SxbServiceFacilityKey)
  995.         CloseRegKey $(ServicesbasedKey)
  996.         CloseRegKey $(X25ServiceDigiX25Key)
  997.         CloseRegKey $(X25ServiceParametersKey)
  998.         goto ShellCodeError
  999.     endif
  1000.     set RegistryErrorIndex = $($R0)
  1001.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1002.         EndWait
  1003.         Debug-Output "Registry error: add value list."
  1004.         CloseRegKey $(ServicesbasedKey)
  1005.         CloseRegKey $(X25ServiceDigiX25Key)
  1006.         CloseRegKey $(X25ServiceParametersKey)
  1007.         goto fatalregistry
  1008.     endif
  1009.  
  1010.     FlushRegKey $(ServicesbasedKey)
  1011.     FlushRegKey $(X25ServiceDigiX25Key)
  1012.     FlushRegKey $(X25ServiceParametersKey)
  1013.  
  1014.     CloseRegKey $(ServicesbasedKey)
  1015.     CloseRegKey $(X25ServiceDigiX25Key)
  1016.     CloseRegKey $(X25ServiceParametersKey)
  1017.  
  1018. ;************************************************************************************
  1019. ;End fleshing out System\CurrentControlSet\Services\DigiX25 Registry hierarchy
  1020. ;************************************************************************************
  1021. ;  This is the end of the if for OldVersionExisted  
  1022. endif
  1023.  
  1024.     goto adapteroptions
  1025.  
  1026. configureadapter = +
  1027.                 Debug-Output "OEMNADX.INF: Configure Adapter"    
  1028.     Ifstr $(!NTN_RegBase) != $(KeyNull)
  1029.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) SoftwareKey
  1030.         Ifstr $(SoftwareKey) == $(KeyNull)
  1031.           Debug-Output "Unable to open "$(!NTN_RegBase)" key!!!!"
  1032.           goto ShellCodeError
  1033.         Else
  1034.           GetRegValue $(SoftwareKey), "ServiceName", ServiceNameList
  1035.           set AdapterServiceName = *($(ServiceNameList),4)
  1036.           set AdapterNameNumber = $(AdapterServiceName)
  1037.  
  1038.                 OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(AdapterServiceName)"\Parameters" +
  1039.                                         $(MAXIMUM_ALLOWED) ServiceKey
  1040.                 Ifstr $(ServiceKey) != $(KeyNull)
  1041.                     GetRegValue $(ServiceKey), "VANum", X25VANumList
  1042.                      set X25VANum = *($(X25VANumList),4)
  1043.                   CloseRegKey $(ServiceKey)
  1044.                     endif
  1045.  
  1046.           CloseRegKey $(SoftwareKey)
  1047.         Endif
  1048.     Endif
  1049.  
  1050. adapteroptions = +
  1051.     StartWait
  1052.     ifint $(OldVersionExisted) == $(FALSE)
  1053.         ifstr(i) $(!NTN_InstallMode) == "install"
  1054.            Ifstr(i) $(DoCopy) == "YES"
  1055. badpath = +
  1056.               Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  1057.               Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1058.                   Goto ShellCodeError
  1059.               Else-Ifstr(i) $($R0) == STATUS_FAILED
  1060.                   Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  1061.                   ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1062.                       Debug-Output"Shell code error: DoAskSource"
  1063.                       goto ShellCodeError
  1064.                   endif
  1065.                   set Error = $($R0)
  1066.                   Goto fatal
  1067.               Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  1068.                   set CommonStatus = STATUS_USERCANCEL
  1069.                   Goto abandon
  1070.               Endif
  1071.               Set SrcDir = $($R1)
  1072.                         LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(SrcDir)"\DigiWan.dl_"
  1073.                             ifstr(i) $(STATUS) != YES
  1074.                                 goto badpath
  1075.                             endif
  1076.            Endif
  1077.            install "Install-Option"
  1078.            ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  1079.               Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  1080.               ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1081.                   goto ShellCodeError
  1082.               endif
  1083.               set Error = $($R0)
  1084.               goto fatal
  1085.            endif
  1086.         endif
  1087.     endif
  1088.     LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE
  1089.     Debug-Output "OEMNADX.INF: LIBHANDLE is "$(!LIBHANDLE)
  1090.  
  1091.     LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\DigiWan.dll"
  1092.     ifstr(i) $(STATUS) != YES
  1093.       set Error = ""
  1094.       goto fatal
  1095.         endif
  1096.  
  1097.     Debug-Output "OEMNADX.INF: RegBase "$(!NTN_RegBase)
  1098.     LoadLibrary "x" $(!STF_CWDDIR)DigiWan.dll DigiHANDLE
  1099.     Debug-Output "OEMNADX.INF: DigiHANDLE is "$(DigiHANDLE)
  1100.     Shell $(subroutineinf) PopBillboard
  1101.     LibraryProcedure Result $(DigiHANDLE) DigiEntry $(AdapterNameNumber) $(!STF_HWND)
  1102.     Debug-Output "OEMNADX.INF: Dialog Result is "$(Result)
  1103.  
  1104.         FreeLibrary $(DigiHANDLE)
  1105.  
  1106.     Ifstr(i) $(Result) == "OK"
  1107.  
  1108. ;***********************************************************************************
  1109. ; Begin creating HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TAPIDEVICES\DigiX25 
  1110. ; keys and Registry hierarchy
  1111. ;***********************************************************************************
  1112.     StartWait
  1113.     set DigiSpecificString = "Flesh out... \HARDWARE\DEVICEMAP\TAPIDEVICES\DigiX25 Registry hierarchy"
  1114.  
  1115. ;; goto to Sevices\DigiSxb#\Parameters\Port[A|B]\X25 and get the total number of ports needed
  1116.     Shell  $(UtilityInf),BaseServiceKey
  1117.     set RegistryErrorIndex = $($R0)
  1118.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1119.       set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
  1120.       goto fatalregistry
  1121.     endif
  1122.     set base = $($R1)
  1123.  
  1124.     set totalPortA = {}
  1125.     set X25Portkey = ""
  1126.     OpenRegKey $(base) "" $(AdapterNameNumber)"\Parameters\PortA\X25" $(MAXIMUM_ALLOWED) X25Portkey
  1127.     ifstr(i) $(X25Portkey) == $(KeyNull)
  1128.        Debug-Output $(AdapterNameNumber)"\Parameters\PortA\X25"
  1129.        Debug-Output "Unable to Open Parameters\PortA"
  1130.        goto fatalregistry
  1131.         endif
  1132.         GetRegValue $(X25Portkey) "TotalRASPorts"    totalPortA
  1133.         CloseRegKey $(X25Portkey)
  1134.  
  1135.     set totalPortB = {}
  1136.     set X25Portkey = ""
  1137.     OpenRegKey $(base) "" $(AdapterNameNumber)"\Parameters\PortB\X25" $(MAXIMUM_ALLOWED) X25Portkey
  1138.     ifstr(i) $(X25Portkey) == $(KeyNull)
  1139.         Debug-Output "Unable to Open Parameters\PortB\X25"
  1140.           goto fatalregistry
  1141.         endif
  1142.         GetRegValue $(X25Portkey) "TotalRASPorts"    totalPortB
  1143.         CloseRegKey $(X25Portkey)
  1144.  
  1145.     OpenRegKey $(base) "" $(AdapterNameNumber)"\Parameters\PortA\Wan" $(MAXIMUM_ALLOWED) X25Wankey
  1146.     ifstr(i) $(X25Wankey) == $(KeyNull)
  1147.         Debug-Output "Unable to Open Parameters\PortA\Wan"
  1148.           goto fatalregistry
  1149.         endif
  1150.         GetRegValue $(X25Wankey) "Wan_baud"    BaudList
  1151.         ifint *($(BaudList), 4) == 0
  1152.             GetRegValue $(X25Wankey) "Ext_baud"    BaudList
  1153.         endif
  1154.         set LineSpeedA = *($(BaudList), 4)
  1155.         CloseRegKey $(X25Wankey)
  1156.  
  1157.     OpenRegKey $(base) "" $(AdapterNameNumber)"\Parameters\PortB\Wan" $(MAXIMUM_ALLOWED) X25Wankey
  1158.     ifstr(i) $(X25Wankey) == $(KeyNull)
  1159.         Debug-Output "Unable to Open Parameters\PortB\Wan"
  1160.           goto fatalregistry
  1161.         endif
  1162.         GetRegValue $(X25Wankey) "Wan_baud"    BaudList
  1163.         ifint *($(BaudList), 4) == 0
  1164.             GetRegValue $(X25Wankey) "Ext_baud"    BaudList
  1165.         endif
  1166.         set LineSpeedB = *($(BaudList), 4)
  1167.         CloseRegKey $(X25Wankey)
  1168.  
  1169.         set VANameNumber = $(X25HardwareName)$(X25VANum)
  1170.     OpenRegKey $(base) "" $(VANameNumber)"\Parameters" $(MAXIMUM_ALLOWED) VAParamkey
  1171.         ifstr(i) $(VAParamkey) != $(KeyNull)
  1172.         SetRegValue $(VAParamkey) {LineSpeedA,$(NoTitle),$(!REG_VT_DWORD),$(LineSpeedA)}
  1173.         SetRegValue $(VAParamkey) {LineSpeedB,$(NoTitle),$(!REG_VT_DWORD),$(LineSpeedB)}
  1174.         SetRegValue $(VAParamkey) {NumVCA,$(NoTitle),$(!REG_VT_DWORD),*($(totalPortA),4)}
  1175.            SetRegValue $(VAParamkey) {NumVCB,$(NoTitle),$(!REG_VT_DWORD),*($(totalPortB),4)}
  1176.             FlushRegKey $(VAParamkey)
  1177.             CloseRegKey $(VAParamkey)
  1178.         endif
  1179.  
  1180.         CloseRegKey $(base)
  1181.  
  1182.         ;    totalPorts = total number of ports from PortA and PortB
  1183.         Debug-Output "PortA --> "$(totalPortA)" Port B -->"$(totalPortB)
  1184.         set-add totalPorts = *($(totalPortA), 4), *($(totalPortB), 4)
  1185.         Debug-Output "Total Ports --> "$(totalPorts)
  1186.  
  1187.     OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP" $(MAXIMUM_ALLOWED) DeviceMapKey
  1188.     ifstr(i) $(DeviceMapKey) == $(KeyNull)
  1189.         Debug-Output "Unable to Open DeviceMapKey"
  1190.          set RegistryErrorIndex = UNABLE_ACCESS_DEVICEMAP_REG
  1191.          goto fatalregistry
  1192.     endif
  1193.     CreateRegKey $(DeviceMapKey) {"TAPI DEVICES",$(NoTitle),GenericClass} "" +
  1194.         $(MAXIMUM_ALLOWED) "" TapiDevicesKey
  1195.     ifstr $(TapiDevicesKey) == $(KeyNull)
  1196.       OpenRegKey $(DeviceMapKey) "" "TAPI DEVICES" $(MAXIMUM_ALLOWED) TapiDevicesKey
  1197.       ifstr(i) $(TapiDevicesKey) == $(KeyNull)
  1198.         Debug-Output "Unable to open TapiDevicesKey " 
  1199.         set RegistryErrorIndex = UNABLE_ACCESS_TAPIDEVICES_REG
  1200.         CloseRegKey $(DeviceMapKey)
  1201.         goto fatalregistry
  1202.       endif
  1203.     endif
  1204.     CreateRegKey $(TapiDevicesKey) {"DigiX25",$(NoTitle),GenericClass} "" +
  1205.                                     $(MAXIMUM_ALLOWED) "" DigiX25ServiceProviderKey
  1206.     ifstr $(DigiX25ServiceProviderKey) == $(KeyNull)
  1207.       OpenRegKey $(TapiDevicesKey) "" "DigiX25" $(MAXIMUM_ALLOWED) DigiX25ServiceProviderKey
  1208.       ifstr(i) $(DigiX25ServiceProviderKey) == $(KeyNull)
  1209.          Debug-Output "Unable to Open X25ServiceProviderKey"
  1210.          set RegistryErrorIndex = UNABLE_ACCESS_SOFTWARE_REG
  1211.          CloseRegKey $(DeviceMapKey)
  1212.          CloseRegKey $(TapiDevicesKey)
  1213.          goto fatalregistry
  1214.       endif
  1215.        endif
  1216.  
  1217.     set ServiceProviderMediaType = "X25"
  1218.     set ServiceProviderNetCardNumber = $(X25VANum)
  1219.     set ServiceProviderAddress = {}
  1220.        set BuildAddress = ""
  1221.     set BuildDigit2 = 0
  1222.     set BuildDigit3 = 0
  1223.  
  1224. ; This loop builds the Tapi Devices Addresses 0 - totalPorts for the designated netcard
  1225.       goto LoopTest
  1226.     LoopTop = +
  1227.     set BuildAddress = $(ServiceProviderNetCardNumber)"-"$(BuildDigit2)"-"$(BuildDigit3)
  1228.     set ServiceProviderAddress = >($(ServiceProviderAddress), $(BuildAddress))
  1229.     set-add BuildDigit2 = $(BuildDigit2), 1
  1230.     LoopTest = +
  1231.         ifint $(BuildDigit2) < $(totalPorts)
  1232.             goto LoopTop
  1233.         endif
  1234.   
  1235.     GetRegValue $(DigiX25ServiceProviderKey) "Address" PreviousValueList
  1236.     ifstr(i) $(PreviousValueList) != {}
  1237.       set PreviousAddress = *($(PreviousValueList), 4)
  1238.         endif
  1239.  
  1240. ; This loop concatenates the new Tapi Devices Addresses onto the existing Tapi Device Addresses
  1241.  
  1242.     set ServiceProviderAddressFinal = {}
  1243.  
  1244.         ForListDo $(PreviousAddress)
  1245.             set address = *($(PreviousAddress), $(#))
  1246.             Split-String $(address), "-", addressSplit
  1247.  
  1248.             ifstr(i) *($(addressSplit), 1) != $(X25VANum)
  1249.           set ServiceProviderAddressFinal = >($(ServiceProviderAddressFinal), $(address))
  1250.             endif
  1251.         EndForListDo
  1252.  
  1253.       ForListDo $(ServiceProviderAddress)
  1254.       set ServiceProviderAddressFinal = >($(ServiceProviderAddressFinal), *($(ServiceProviderAddress), $(#)))
  1255.     EndForListDo
  1256.  
  1257.     set NewValueList = +
  1258.                 {    {"Media Type",$(NoTitle),$(!REG_VT_SZ),$(ServiceProviderMediaType)}, +
  1259.                {Address,$(NoTitle),$(!REG_VT_MULTI_SZ),$(ServiceProviderAddressFinal)} +
  1260.            }
  1261.     Shell  $(UtilityInf), AddValueList, $(DigiX25ServiceProviderKey),$(NewValueList)
  1262.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1263.       Debug-Output "ShellCode error: AddValueList FAILED!  --"$(DigiX25ServiceProviderKey)
  1264.       CloseRegKey $(DeviceMapKey)
  1265.       CloseRegKey $(TapiDevicesKey)
  1266.       CloseRegKey $(DigiX25ServiceProviderKey)
  1267.       goto ShellCodeError
  1268.     endif
  1269.     set RegistryErrorIndex = $($R0)
  1270.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1271.       EndWait
  1272.       Debug-Output "Registry error: add value list."
  1273.       CloseRegKey $(DeviceMapKey)
  1274.       CloseRegKey $(TapiDevicesKey)
  1275.       CloseRegKey $(DigiX25ServiceProviderKey)
  1276.       goto fatalregistry
  1277.     endif
  1278.  
  1279.     FlushRegKey $(DeviceMapKey)
  1280.     FlushRegKey $(TapiDevicesKey)
  1281.     FlushRegKey $(DigiX25ServiceProviderKey)
  1282.  
  1283.     CloseRegKey $(DeviceMapKey)
  1284.     CloseRegKey $(TapiDevicesKey)
  1285.     CloseRegKey $(DigiX25ServiceProviderKey)
  1286.     EndWait
  1287.  
  1288. ;***********************************************************************************
  1289. ; End of creating HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TAPIDEVICES\DigiX25 
  1290. ; keys and Registry hierarchy
  1291. ;***********************************************************************************
  1292.  
  1293.        ; If we were just configuring, then don't invoke RAS
  1294.         Ifstr(i) $(!NTN_InstallMode) == configure
  1295.             goto skipRAS
  1296.         endif
  1297.  
  1298.                 read-syms InvokeRasDlg$(!STF_LANGUAGE)
  1299.         Shell "oemnsvra.inf" CheckRasInstalled
  1300.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1301.             Debug-Output "OEMNADX.INF: Error Shelling the RAS INF file oemnsvra.inf" 
  1302.             Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE),  +
  1303.                   "STATUS", $(InvokeRasError)
  1304.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1305.                 goto ShellCodeError
  1306.             endif
  1307.             goto successful
  1308.         endif
  1309.         
  1310.         set RasInstalled = $($R0)
  1311.         Debug-Output "OEMNADX.INF: Is RAS Installed? "$(RasInstalled)
  1312.         
  1313.             ifstr(i) $(RasInstalled) == FALSE
  1314.                     Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", $(RemindRasConfigMsg)
  1315.                     goto successful
  1316.         else
  1317.                     Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", $(InvokeRasConfigMsg)
  1318.         endif
  1319.  
  1320.                  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1321.                     goto successful
  1322.                 endif
  1323.     
  1324.           set AddCopy  = YES
  1325.         set DoCopy   = YES
  1326.         set DoConfig = YES
  1327.  
  1328.         set SaveNTN_InstallMode = $(!NTN_InstallMode)
  1329.         set !NTN_InstallMode = configure
  1330.         
  1331.         Debug-Output "OEMNADDI.INF: after - NTN_InstallMode = "$(!NTN_InstallMode)
  1332.  
  1333.         ; We change the following values so the user is prompted to enter
  1334.         ; a path for RAS file components if necessary.
  1335.         ;
  1336.         set SaveSTF_SRCDIR_OVERRIDE = $(!STF_SRCDIR_OVERRIDE)
  1337.         set !STF_SRCDIR_OVERRIDE = ""
  1338.  
  1339.         Debug-Output "OEMNADDI.INF: Shelling to oemnsvra.inf InstallOption with parameters:"
  1340.         Debug-Output "                  STF_LANGUAGE = "$(!STF_LANGUAGE)
  1341.         Debug-Output "                  SrcDir = "$(SourceDir)
  1342.         Debug-Output "                  AddCopy = "$(AddCopy)
  1343.         Debug-Output "                  DoCopy = "$(DoCopy)
  1344.         Debug-Output "                  DoConfig = "$(DoConfig)
  1345.  
  1346.         ;
  1347.                 Shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" $(SourceDir) $(AddCopy) $(DoCopy) $(DoConfig) 
  1348.  
  1349.         set !STF_SRCDIR_OVERRIDE = $(SaveSTF_SRCDIR_OVERRIDE)
  1350.  
  1351.         ifstr(i) $(RasInstalled) == TRUE
  1352.              set !NTN_InstallMode = $(SaveNTN_InstallMode)
  1353.         endif
  1354.         Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1355.             Debug-Output "OEMNADX.INF: Error Shelling the RAS INF file oemnsvra.inf" 
  1356.             Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS",  +
  1357.                   $(InvokeRasError)
  1358.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1359.                 goto ShellCodeError
  1360.             endif
  1361.             goto successful
  1362.         Endif
  1363.  
  1364. skipRAS = +
  1365.         goto successful
  1366.  
  1367.     else-Ifstr(i) $(Result) == Cancel
  1368.             Ifstr(i) $(!NTN_InstallMode) == install
  1369.                 goto fatal
  1370.             else
  1371.         goto cancel
  1372.             endif
  1373.     else-Ifstr(i) $(Result) == Error
  1374.         goto fatal
  1375.     endif
  1376.  
  1377. bindingadapter =+
  1378.     Debug-Output "******************Entering bindingadapter******************"
  1379.     set Error = "Binding: Sorry, not yet implemented."
  1380.     goto fatal
  1381.  
  1382. removeadapter = +
  1383.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) SoftwareKey
  1384.     Ifstr $(SoftwareKey) != $(KeyNull)
  1385.       GetRegValue $(SoftwareKey), "ServiceName", ServiceNameList
  1386.       set AdapterServiceName = *($(ServiceNameList),4)
  1387.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(AdapterServiceName)"\Parameters" $(MAXIMUM_ALLOWED) ServiceKey
  1388.         Ifstr $(ServiceKey) != $(KeyNull)
  1389.             GetRegValue $(ServiceKey), "VANum", X25VANumList
  1390.              set X25VANum = *($(X25VANumList),4)
  1391.              CloseRegKey $(ServiceKey)
  1392.             endif
  1393.       CloseRegKey $(SoftwareKey)
  1394.     Endif
  1395.  
  1396. ContinueOperation = +
  1397.  
  1398.     read-syms DebugOptions
  1399.     set DigiSpecificString = "RemoveAdapter"
  1400.     Debug-Output "******************Entering removeadapter******************"
  1401.     Debug-Output "OEMNADX.INF: removeadapter"
  1402.     Debug-Output "OEMNADX.INF: Removing Hardware Components"
  1403.     Debug-Output "OEMNADX.INF: ProductKeyName = "$(ProductKeyName)
  1404.     Debug-Output "OEMNADX.INF: SxbProductSoftwareName = "$(SxbProductSoftwareName)
  1405.     Debug-Output "OEMNADX.INF: X25ProductSoftwareName = "$(X25ProductSoftwareName)
  1406.     Debug-Output "OEMNADX.INF: NTN_RegBase = "$(!NTN_RegBase)
  1407.  
  1408.          OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP\TAPI DEVICES" $(MAXIMUM_ALLOWED) TapiKey
  1409.         ifstr(i) $(TapiKey) != $(KeyNull)
  1410.              OpenRegKey $(TapiKey) "" "DigiX25" $(MAXIMUM_ALLOWED) DeviceMapKey
  1411.             ifstr(i) $(DeviceMapKey) != $(KeyNull)
  1412.                 GetRegValue $(DeviceMapKey) "Address" AddressList
  1413.                 set NewAddressList = {}
  1414.                 ForListDo    *($(AddressList), 4)
  1415.                     Split-String $($) "-" DeviceSplit
  1416.                     ifint *($(DeviceSplit), 1) != $(X25VANum)
  1417.                         set NewAddressList = >($(NewAddressList), $($))
  1418.                     endif
  1419.                 EndForListDo
  1420.                 ifstr $(NewAddressList) == {}
  1421.                     DeleteRegKey $(TapiKey) "DigiX25"
  1422.                 else
  1423.                      SetRegValue $(DeviceMapKey) {Address,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NewAddressList)}
  1424.                     FlushRegKey $(DeviceMapKey)
  1425.                     CloseRegKey $(DeviceMapKey)
  1426.                 endif
  1427.             endif
  1428.             CloseRegKey $(TapiKey)
  1429.         endif
  1430.  
  1431.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  1432.         $(X25ProductSoftwareName), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$(X25VANum)
  1433.     Debug-Output "OEMNADX.INF: RemoveHardwareComponent return value = "$($R0)
  1434.     Ifstr(i) $($R0) != NO_ERROR
  1435.         Debug-Output "OEMNADX.INF: RemoveHardwareComponent != NO_ERROR"
  1436.     Endif
  1437.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1438.         Debug-Output "ShellCode error"
  1439.         goto ShellCodeError
  1440.     endif
  1441.     set RegistryErrorIndex = $($R0)
  1442.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1443.         Debug-Output "fatal registry error"
  1444.         goto fatalregistry
  1445.     endif
  1446.  
  1447.     Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  1448.         $(SxbProductSoftwareName), $(!NTN_RegBase)
  1449.     Debug-Output "OEMNADX.INF: RemoveHardwareComponent return value = "$($R0)
  1450.     Ifstr(i) $($R0) != NO_ERROR
  1451.         Debug-Output "OEMNADX.INF: RemoveHardwareComponent != NO_ERROR"
  1452.     Endif
  1453.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1454.         Debug-Output "ShellCode error"
  1455.         goto ShellCodeError
  1456.     endif
  1457.     set RegistryErrorIndex = $($R0)
  1458.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1459.         Debug-Output "fatal registry error"
  1460.         goto fatalregistry
  1461.     endif
  1462.  
  1463. ; if DigiX25 refcount is zero then remove files
  1464.     shell $(UtilityInf), IsRefCountEqualZero, $(X25ProductKeyName)
  1465.     Ifstr(i) $($R0) != NO_ERROR
  1466.         Debug-Output "UTILITY.INF: [RemoveAdapter] IsRefCountEqualZero returned "$($R0)
  1467.     endif
  1468.     Ifint $($R1) == 0
  1469.         set RegistryErrorIndex = REF_COUNT_NOT_ZERO
  1470.         goto removeadapterExit
  1471.     else
  1472.         install RemoveFiles
  1473.     endif
  1474.  
  1475.         goto removeadapterExit
  1476.  
  1477. removeadapterExitCancel = +
  1478.         set CommonStatus = STATUS_USERCANCEL
  1479.  
  1480. removeadapterExit = +
  1481.     Debug-Output "OEMNADX.INF: Exiting removeadapter"
  1482.     goto end
  1483.  
  1484. UpgradeSoftware = +
  1485.     goto end
  1486.  
  1487. successful = +
  1488.     goto end
  1489.  
  1490. abandon = +
  1491.     set ProductSoftwareName = $(SxbProductSoftwareName) 
  1492.     ForListDo $(OEM_ABANDON_OPTIONS)
  1493.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  1494.             $(ProductSoftwareName), $($)
  1495.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1496.             Debug-Output "ShellCode error"
  1497.             goto ShellCodeError
  1498.         endif
  1499.         set RegistryErrorIndex = $($R0)
  1500.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1501.             goto fatalregistry
  1502.         endif
  1503.         set ProductSoftwareName = $(X25ProductSoftwareName) 
  1504.     EndForListDo
  1505.  
  1506.          OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP\TAPI DEVICES" $(MAXIMUM_ALLOWED) TapiKey
  1507.         ifstr(i) $(TapiKey) != $(KeyNull)
  1508.              OpenRegKey $(TapiKey) "" "DigiX25" $(MAXIMUM_ALLOWED) DeviceMapKey
  1509.             ifstr(i) $(DeviceMapKey) != $(KeyNull)
  1510.                 GetRegValue $(DeviceMapKey) "Address" AddressList
  1511.                 set NewAddressList = {}
  1512.                 ForListDo    *($(AddressList), 4)
  1513.                     Split-String $($) "-" DeviceSplit
  1514.                     ifint *($(DeviceSplit), 1) != $(X25VANum)
  1515.                         set NewAddressList = >($(NewAddressList), $($))
  1516.                     endif
  1517.                 EndForListDo
  1518.                 ifstr $(NewAddressList) == {}
  1519.                     DeleteRegKey $(TapiKey) "DigiX25"
  1520.                 else
  1521.                      SetRegValue $(DeviceMapKey) {Address,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NewAddressList)}
  1522.                     FlushRegKey $(DeviceMapKey)
  1523.                     CloseRegKey $(DeviceMapKey)
  1524.                 endif
  1525.             endif
  1526.             CloseRegKey $(TapiKey)
  1527.         endif
  1528.  
  1529.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  1530.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  1531.             $(SxbProductSoftwareName), TRUE
  1532.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1533.             Debug-Output "ShellCode error"
  1534.             goto ShellCodeError
  1535.         endif
  1536.         set RegistryErrorIndex = $($R0)
  1537.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1538.             goto fatalregistry
  1539.         endif
  1540.  
  1541.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  1542.             $(X25ProductSoftwareName), TRUE
  1543.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1544.             Debug-Output "ShellCode error"
  1545.             goto ShellCodeError
  1546.         endif
  1547.         set RegistryErrorIndex = $($R0)
  1548.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1549.             goto fatalregistry
  1550.         endif
  1551.  
  1552.                 install RemoveFiles
  1553.     endif
  1554.     goto end
  1555. warning = +
  1556.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  1557.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1558.         goto ShellCodeError
  1559.     endif
  1560.     ifstr(i) $($R1) == "OK"
  1561.         goto $(to)
  1562.     else-ifstr(i) $($R1) == "CANCEL"
  1563.         goto $(from)
  1564.     else
  1565.         goto "end"
  1566.     endif
  1567.  
  1568. nonfatalinfo = +
  1569.     Set Severity = STATUS
  1570.     Set CommonStatus = STATUS_USERCANCEL
  1571.     goto nonfatalmsg
  1572.  
  1573. nonfatal = +
  1574.     Set Severity = NONFATAL
  1575.     goto nonfatalmsg
  1576.  
  1577. nonfatalmsg = +
  1578.     ifstr(i) $(Error) == ""
  1579.         Set Severity = NONFATAL
  1580.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1581.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1582.             goto ShellCodeError
  1583.         endif
  1584.         set Error = $($R0)
  1585.     endif
  1586.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  1587.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1588.         goto ShellCodeError
  1589.     endif
  1590.     ifstr(i) $($R1) == "OK"
  1591.         goto $(from)
  1592.     else
  1593.         goto "end"
  1594.     endif
  1595.  
  1596. fatalregistry = +
  1597.     Debug-Output "******************Entering fatalregistry******************"
  1598.  
  1599.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  1600.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1601.        Debug-Output "fatalregistry: shell to find RegistryErrorString failed."
  1602.        goto ShellCodeError
  1603.     endif
  1604.     read-syms AbortMessage$(!STF_LANGUAGE)
  1605.     set Error = $($R0)$(!LF)$(!LF)$(AbortText)
  1606.     
  1607.     goto fatal
  1608.  
  1609. fataldetect = +
  1610.     Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
  1611.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1612.         Debug-Output "ShellCode error: cannot get an error string."
  1613.         goto ShellCodeError
  1614.     endif
  1615.     set Error = $($R0)
  1616.     Goto fatal
  1617.  
  1618. fatal = +
  1619.     ifstr(i) $(Error) == ""
  1620.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1621.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1622.             goto ShellCodeError
  1623.         endif
  1624.         set Error = $($R0)
  1625.     endif
  1626.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  1627.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1628.         goto ShellCodeError
  1629.     endif
  1630.     goto setfailed
  1631. ShellCodeError = +
  1632.     set DlgType      = "MessageBox"
  1633.     set STF_MB_TITLE = "Error: "$(FunctionTitle)
  1634.     set STF_MB_TEXT  = "Shell Code Error"
  1635.     set STF_MB_TYPE  = 1
  1636.     set STF_MB_ICON  = 3
  1637.     set STF_MB_DEF   = 1
  1638.     ui start "Error Message"
  1639.     goto setfailed
  1640.  
  1641. setfailed = +
  1642.     set CommonStatus = STATUS_FAILED
  1643.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  1644.         set OEM_ABANDON_ON = FALSE
  1645.         goto abandon
  1646.     endif
  1647.  
  1648. cancel = +
  1649.         set CommonStatus = STATUS_USERCANCEL
  1650.         goto term
  1651.  
  1652. end = +
  1653.     Debug-Output "******************Entering end******************"
  1654.     goto term
  1655.  
  1656. term = +
  1657.     ifstr(i) $(!LIBHANDLE) != $(HandleNull)
  1658.       FreeLibrary $(!LIBHANDLE)
  1659.     endif
  1660.     Debug-Output "******************Entering term -- GoodBye!!!******************"
  1661.     Return $(CommonStatus)
  1662.  
  1663. [RemoveFiles]
  1664.    Debug-Output "******************Entering [RemoveFiles]******************"
  1665.    set RemoveList = {}
  1666.    set RenameList = {}
  1667.    OpenRegKey $(!REG_H_LOCAL) "" $(SxbProductKeyName) +
  1668.               $(MAXIMUM_ALLOWED) SxbKeyProductHdwDriver
  1669.    ifstr $(SxbKeyProductHdwDriver) == $(KeyNull)
  1670.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(SxbProductServiceName)".sys")
  1671.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(AdapterSxbImagePathISA))
  1672.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(AdapterBiosImagePathISA))
  1673.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(AdapterSxbImagePathPCI))
  1674.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(AdapterBiosImagePathPCI))
  1675.    endif
  1676.    CloseRegKey $(SxbKeyProductHdwDriver)
  1677.  
  1678.    OpenRegKey $(!REG_H_LOCAL) "" $(X25ProductKeyName) +
  1679.               $(MAXIMUM_ALLOWED) KeyProduct
  1680.    ifstr $(KeyProduct) == $(KeyNull)
  1681.       set RenameList = >($(RenameList), $(!STF_WINDOWSSYSPATH)"\drivers\"$(X25ProductServiceName)".sys")
  1682.       set RemoveList = >($(RemoveList), $(!STF_WINDOWSSYSPATH)"\DigiWan.dll")
  1683.       set RemoveList = >($(RemoveList), $(!STF_WINDOWSSYSPATH)"\DigiWan.hlp")
  1684.       set RemoveList = >($(RemoveList), $(!STF_WINDOWSSYSPATH)"\DigiWan.cnt")
  1685.    endif
  1686.    CloseRegKey $(KeyProduct)
  1687.  
  1688.    Debug-Output "RemoveList = "$(RemoveList)
  1689.    Debug-Output "RenameList = "$(RenameList)
  1690.  
  1691.    ForListDo $(RemoveList)
  1692.        Debug-Output "Removing "$($)
  1693.        LibraryProcedure Status , $(!LIBHANDLE), DelFile $($)
  1694.        Debug-Output "Status is "$(Status)
  1695.    EndForListDo
  1696.    ForListDo $(RenameList)
  1697.      Debug-Output "RenameList entry = "$($)
  1698.      Split-String $($) "\" FilePath
  1699.      QueryListSize PathLen $(FilePath)
  1700.      Split-String *($(FilePath),$(PathLen)) "." FullFileName
  1701.      Set FileName = *($(FullFileName),1)
  1702.      Debug-Output "FileName is "$(FileName)
  1703.      LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old"
  1704.      Debug-Output "CheckFile Status = "$(STATUS)
  1705.      ifstr(i) $(STATUS) == YES
  1706.          LibraryProcedure STATUS, $(!LIBHANDLE), DelFile $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old"
  1707.          Debug-Output "Delfile Status = "$(STATUS)
  1708.          LibraryProcedure STATUS, $(!LIBHANDLE), DelFile $($)
  1709.          Debug-Output "Delfile Status = "$(STATUS)
  1710.      endif
  1711.  
  1712.      Debug-Output "Renaming from "$($)
  1713.      Debug-Output "Renaming to "$(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old"
  1714.      LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $($)
  1715.      ifstr(i) $(STATUS) == YES
  1716.          LibraryProcedure Status1 , $(!LIBHANDLE), RenFile $($), $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old"
  1717.      endif
  1718.      Debug-Output "Status is "$(Status1)
  1719.      AddFileToDeleteList $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old"
  1720.    EndForListDo
  1721.    exit
  1722.  
  1723. [DebugConfiguration]
  1724.     Debug-Output $(STF_CONTEXTINFNAME)" **CONFIGURATION STATE: "$($0)
  1725.     return
  1726.  
  1727. [Install-Option]
  1728.     Debug-Output "********************* Inside Install-Option *************************"
  1729.     Debug-Output "   AddCopy = "$(AddCopy)
  1730.     Debug-Output "   DoCopy = "$(DoCopy)
  1731.     Debug-Output "   DoConfig = "$(DoConfig)
  1732.     Debug-Output "   NTN_InstallPhase = "$(!NTN_InstallPhase)
  1733.     set STF_VITAL = ""
  1734.     ifstr(i) $(AddCopy) == "YES"
  1735.         AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  1736.         AddSectionFilesToCopyList Files-DigiX25 $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  1737.         AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
  1738.  
  1739.         AddSectionFilesToCopyList Files-$(Option)-images $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  1740.  
  1741.     endif
  1742.  
  1743.         set STF_DECOMPRESS = 1
  1744.  
  1745.     ifstr(i) $(DoCopy) == "YES"
  1746.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1747.        CopyFilesInCopyList
  1748.     else-ifstr(i) $(!NTN_InstallPhase) == primary
  1749.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1750.        CopyFilesInCopyList
  1751.     endif
  1752.     Exit
  1753.  
  1754. [Source Media Descriptions]
  1755.     1 = "Windows NT CD-ROM" 
  1756.  
  1757. [Signature]
  1758.     FileType = MICROSOFT_DRVLIB_FILE
  1759.  
  1760. [GetSignature]
  1761.     read-syms Signature
  1762.     return $(FileType)
  1763.  
  1764. [ProductType]
  1765.     STF_PRODUCT  = Winnt
  1766.     STF_PLATFORM = I386
  1767.  
  1768. [Files-Inf]
  1769.     1, oemsetup.inf, SIZE=74959, RENAME=$(!UG_Filename)
  1770. [Files-DigiSyncX25-images]
  1771.     1,SxbFep.bin,  SIZE=385024, NODELETESOURCE
  1772.     1,SxbBios.bin, SIZE=25088,  NODELETESOURCE
  1773.     1,SxbFep.pci,  SIZE=385280, NODELETESOURCE
  1774.     1,SxbBios.pci, SIZE=26112,  NODELETESOURCE
  1775. [Files-DigiSyncX25]
  1776.     1,DigiSxb.sys, SIZE=66800,  NODELETESOURCE
  1777. [Files-DigiX25]
  1778.     1,DigiX25.sys, SIZE=50032,  NODELETESOURCE
  1779. [Files-Dll]
  1780.     1,DigiWan.dll, SIZE=324608, NODELETESOURCE
  1781.     1,DigiWan.hlp, SIZE=25128,  NODELETESOURCE
  1782.     1,DigiWan.cnt, SIZE=865,    NODELETESOURCE
  1783.  
  1784. [OptionsTextENG]
  1785.     DigiSyncX25 = "Digi SyncPort X.25 Adapter"
  1786.  
  1787. [FileConstantsENG]
  1788.     ProCaption   = "Windows NT Setup"
  1789.     ProCancel    = "Cancel"
  1790.     ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  1791.                    "Are you sure you want to cancel copying files?"
  1792.     ProCancelCap = "Network Setup Message"
  1793.     ProText1     = "Copying:"
  1794.     ProText2     = "To:"
  1795.     FunctionTitle   = "WAN Links Adapter Setup"
  1796.     ProductSoftwareDescription      = "Digi SyncPort Driver"
  1797.     ProductHardwareDescription      = "Digi SyncPort Adapter"
  1798.  
  1799. [InvokeRasDlgENG]
  1800.         RemindRasConfigMsg =    "WAN Links setup is complete. "+
  1801.                                                     "Please remember to install Remote Access Services (RAS) "+
  1802.                                                     "to enable you to use RAS over X.25."
  1803.     InvokeRasSetupMsg = "WAN Links setup is complete. "+
  1804.                     "Remote Access Services (RAS) will now be installed. "+
  1805.                     "Please configure one or more X.25 ports in RAS setup "+
  1806.                     "to enable you to use RAS over X.25." 
  1807.     InvokeRasConfigMsg = "WAN Links setup is complete. "+
  1808.                      "Remote Access Services (RAS) setup will now be invoked. "+
  1809.                      "Please configure one or more X.25 ports in RAS setup "+
  1810.                      "to enable you to use RAS over X.25." 
  1811.     InvokeRasError =  "WAN Links setup encountered an error while invoking "+
  1812.                   "the RAS setup INF file (OEMNSVRA.INF). "+
  1813.                   "Please make sure that the file is present in the system32 "+
  1814.                   "directory and is the proper file."
  1815.     InvokeRasRemove = "X.25 RAS ports in use on this adapter must be removed before this adapter can be removed. "+
  1816.                                       "Remote Access Services (RAS) setup will now be invoked."
  1817.  
  1818.  
  1819. [AbortMessageENG]
  1820.     AbortText  =  "Aborting "$(AdapterHardwareTitle)" Setup. Please reboot the system "+
  1821.                 "to fix the problem."
  1822.  
  1823.